package cn.yunhe.dao;

import cn.yunhe.entity.User;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository("userDao")
public interface UserDao {

    /**
     * 新增用户
     * @param user
     */
    int addUser(User user);

    /**
     * 获取用户数量
     * @return
     */
    int getUserCount(User user);

    /**
     * 获取所有用户
     * @return
     */
    List<User> getAllUser(User user);

    /**
     * 获取所有普通用户
     * @return
     */
    List<User> getAllNormalUser(User user);

    /**
     * 获取所有老师
     * @return
     */
    List<User> getAllTeacher(User user);

    /**
     * 获取所有管理员
     * @return
     */
    List<User> getAllAdmin(User user);

    /**
     * 禁用用户
     */
    int updUserDisable(int userId);

    /**
     * 解除禁用用户
     */
    int updUserUnDisable(int userId);

    /**
     * 根据id获取用户信息
     * @param id
     * @return
     */
    User getUserById(int id);

    /**
     * 修改用户信息
     * @param user
     */
    int updUserInfo(User user);

    /**
     * 修改用户密码
     * @param user
     * @return
     */
    int updUserPwd(User user);

}